#pragma once
#include <mutex>
#include <list>
#include <bitset>


template <typename Size>
class MemoryPool
{
public:
    MemoryPool();

    /// @brief 分配n个字节的MemoryBlock
    /// @param n
    /// @return 分配的block
    MemoryBlock Alloc(std::size_t n);

    /// @brief 释放block
    /// @param block
    void DeAlloc(MemoryBlock &block);

    ~MemoryPool();

private:
    
};